<!--  -->
<template>
<div class=''>
  <h1>{{this.$store.state.counter}}</h1>
  <button @click="Add">加</button>
  <button @click="Sub">减</button>
  <button @click="AsyncAdd">异步加</button>
   <h1>{{isshow}}</h1>
   <h1>{{isShow}}</h1>
   <h2>购物车例子</h2>
   <button @click="handle">点击获取参数</button>
   <shopplist></shopplist>
    <cart></cart>
</div>
</template>

<script>
//这里可以导入其他文件（比如：组件，工具js，第三方插件js，json文件，图片文件等等）
//例如：import 《组件名称》 from '《组件路径》';
import {ADD,SUB} from '@/store/store.js'
import {mapGetters} from 'vuex'
import shopplist from '@/views/shopplist';
import cart from '@/views/cart';
export default {
//import引入的组件需要注入到对象中才能使用
components: {
  'shopplist':shopplist,
    'cart':cart
},
data() {
//这里存放数据
return {
      data:9,
};
},
//监听属性 类似于data概念
computed: {

  isshow(){
    return this.$store.getters.isShow
  },
  ...mapGetters(["isShow"])
},
//监控data中的数据变化

watch: {},
//方法集合
methods: {
      Add(){
        this.$store.commit(ADD,this.data)
      },
      Sub(){
        this.$store.commit({
          type:SUB,
          data:this.data
        })
      },
      AsyncAdd(){

        this.$store.dispatch('AsyncAdd',this.data)
      },
      handle(){
        console.log(this.$store);
      }
},
//生命周期 - 创建完成（可以访问当前this实例）
created() {

},
//生命周期 - 挂载完成（可以访问DOM元素）
mounted() {

},
beforeCreate() {}, //生命周期 - 创建之前
beforeMount() {}, //生命周期 - 挂载之前
beforeUpdate() {}, //生命周期 - 更新之前
updated() {}, //生命周期 - 更新之后
beforeDestroy() {}, //生命周期 - 销毁之前
destroyed() {}, //生命周期 - 销毁完成
activated() {}, //如果页面有keep-alive缓存功能，这个函数会触发
}

var obj1={age:24}

/* var key=age
var obj2=obj['key']=24 */
console.log(obj1);
console.log(obj1['age']);
console.log(obj1.keys);
</script>
<style  scoped>

</style>